Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [C#] Evento all'interno di una procedura
Forum - C# / VB.NET - [C#] Evento all'interno di una procedura

Avatar
7h3.c0r3 (Ex-Member)
Rookie


Messaggi: 21
Iscritto: 19/07/2009

Segnala al moderatore
Postato alle 14:12
Domenica, 26/07/2009
Questo topic è stato chiuso dal moderatore

Ragazzi, ho un dubbio.

Come faccio, all'interno di una procedura, a dire di fare qualcosa, quando, succede un evento? Forse non è molto chiaro... Comunque dovrei annullare un download quando vieni cliccato un bottone.  

PM
Avatar
theprogrammer (Normal User)
Guru^2


Messaggi: 2509
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 14:33
Domenica, 26/07/2009
E come lo fai il download?

PM
Avatar
7h3.c0r3 (Ex-Member)
Rookie


Messaggi: 21
Iscritto: 19/07/2009

Segnala al moderatore
Postato alle 14:43
Domenica, 26/07/2009
Cosi:

Codice sorgente - presumibilmente C++

  1. public void DownloadVideo()
  2.         {
  3.             try
  4.             {
  5.                 WebClient Wc = new WebClient();
  6.                 Uri Url = new Uri(URLCompleto);
  7.                 Wc.DownloadFileCompleted += new AsyncCompletedEventHandler(DownloadFileCompleted);
  8.                 Wc.DownloadProgressChanged += new DownloadProgressChangedEventHandler(DownloadProgressChanged);
  9.                 Wc.DownloadFileAsync(Url, Directory);
  10.                 ButtonDownload.Enabled = false;
  11.                 ButtonNuovo.Enabled = false;
  12.                 ButtonScegliDirectory.Enabled = false;
  13.             }
  14.            
  15.             catch (Exception)
  16.             {
  17.                 MessageBox.Show("Problema di connessione o link errato!", "Errore!", MessageBoxButtons.OK, MessageBoxIcon.Error);
  18.             }
  19.         }



Il problema è che "Wc.CancelDownloadAsync" che dovrei usare quando clicco un bottone, non è utilizzabile esternamente alla procedura e non so come fare...

PM
Avatar
theprogrammer (Normal User)
Guru^2


Messaggi: 2509
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 14:48
Domenica, 26/07/2009
Non puoi farlo perche' hai dichiarato il webclient

WebClient Wc

all'interno. Devi dichiararlo come membro privato della classe in modo da potere cancellare il download tramite un altro pulsante.

PM
Avatar
7h3.c0r3 (Ex-Member)
Rookie


Messaggi: 21
Iscritto: 19/07/2009

Segnala al moderatore
Postato alle 14:58
Domenica, 26/07/2009
Scusa ma questa non vale come dichiarazione?
Codice sorgente - presumibilmente C# / VB.NET

  1. WebClient Wc = new WebClient();


PM
Avatar
theprogrammer (Normal User)
Guru^2


Messaggi: 2509
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 15:02
Domenica, 26/07/2009
Ma e' all'interno della funzione ... e quindi non puoi richiamare la Cancel al di fuori ...

PM
Avatar
7h3.c0r3 (Ex-Member)
Rookie


Messaggi: 21
Iscritto: 19/07/2009

Segnala al moderatore
Postato alle 15:06
Domenica, 26/07/2009
No, niente, risolto grazie.

PM
Avatar
theprogrammer (Normal User)
Guru^2


Messaggi: 2509
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 15:18
Domenica, 26/07/2009
Testo quotato

Postato originariamente da 7h3.c0r3:

No, niente, risolto grazie.  



Prego ... :-?

PM